1. Field of the Invention
The present invention relates to methods and apparatus of data storage and transfer, and more particularly to devices and processes for input of data from remote locations and for later transfer of the data to a destination computer.
There is a long felt need in the business, industrial and scientific communities for a method and apparatus providing an ability to record thoughts and data in remote locations. Recent electronic advances have made possible a wide variety of devices which attempt to meet this need. Portable computers, laptop computers and portable dedicated data logging devices are now commonly found in all areas of our society. Input methods range from keyboard and bar code scanner entry to voice and optical character recognition systems.
An important aspect of these devices is their ability to transfer the information stored therein to other devices. These other devices, such as desktop computers and mainframe computers, for example, often have a greater ability of analyzing, displaying, or disseminating data, when compared to the remote devices. Publishing houses, for example, have extremely powerful text editing and formatting computers with capabilities far beyond those of any portable computer. Data transfer has, accordingly, become extremely important and has given rise to an entire industry of consultants, designers and manufacturers.
2. Prior Art
Many techniques have been devised to effect the transfer of stored data between devices. Serial and parallel transfer protocols, diskettes and other removable media, advanced communication software and complex communications devices make data transfer possible. In few circumstances, however, is data transfer both truly convenient and economical.
Laptop computers are a recent and effective approach to solving the problem of remote entry of textual and numerical data. These computers are light in weight and similar in function to standard office computers, and generally possess floppy disk drives and a wide variety of communications ports as standard features.
Data transfer between such a laptop computer and a personal computer is sometimes attempted by copying data onto a floppy diskette of the laptop computer and moving the diskette to the desktop computer. Often, however, the diskette drives of laptop and desktop computers are not compatible due to differences in the data format or type of disks. Thus, data transfer via floppy diskette does not provide a truly effective method of data transfer from a remote data entry device to a computer having a data storage bank.
Similarly, direct transfer of data via cables requires that communications ports of the correct type are present on both the laptop and desktop computers. Cable transfer also requires installation of communications software on both computers, and a cable to connect the ports of both computers with the correct pin-to-pin configuration. Use of additional cable devices such as gender changers and pinout changers is also often required to match these ports. Existing communications software often changes the format of a data file and delivers it to a remote subdirectory. To use the transferred file, it must first be copied to the data directory for the application and erased from the remote subdirectory. The data must then be imported into the applications program. In the case of spreadsheets and database management programs, the data must also be parsed.
Cable transfer requires access to the expansion slots of the destination computer. These expansion slots are generally located on the back of the destination computer. Such an arrangement often requires considerable manual dexterity, such as reaching or lifting, to gain access to the port. This is a danger to expensive equipment and inconvenient for valuable personnel. Thus, direct or cable data transfer is inefficient, time consumptive, and frequently difficult to achieve.
In summary, existing techniques for data transfer between laptop computers and desktop computers require the user to provide compatible diskette drives, communications software, file translation software, cabling or other devices. These techniques also require that the user have a considerable understanding of the directory and file structures of the laptop and the desktop computer as well as an ability to access the back and perhaps even the interior of the desktop computer.
Data transfer between laptop computers and mini or mainframe computers is yet more difficult than the transfer described above. Operating systems, file structures, diskette drives and communications protocols are less compatible for such computers than for transfers between laptop computers and desktop computers. The transfer thus often requires additional hardware and software, which is generally expensive due to the wide variety of mini and mainframe computers and the correspondingly lower demand for a given transfer configuration.
Presently available remote data acquisition and storage devices, themselves, have still other problems in transferring data. These devices generally do not have diskette drives or other removable storage media. They usually rely on the cable transfer techniques summarized above. Such devices also require installation of custom circuit boards which, if available, fit into the expansion slots of the destination computer. Purchase and installation of these boards is expensive and may tax the power supply capacity of the destination computer.
An additional problem of laptop computers, unrelated to data transfer, arises from the unique size and layout of the keyboard of a laptop computer, with respect to a keyboard of a destination computer. Due to the greater portability of the laptop, laptop users adapt to the unconventional layout and become proficient in its use. After data is transferred to the destination computer, however, these users are required to adapt to an unfamiliar keyboard. The user must thus concentrate more on the keyboard, leaving less attention available for devoting to the actual task. Greater typing effort, poorer quality work and increased keystroke error are common results of this deficiency.
In U.S. Pat. No. 4,710,869, Enokizono describes a keyboard connected to a master CPU (central processing unit) which is in turn connected to a keyboard emulation circuit and a slave CPU. The object of this arrangement is to control multiple devices by providing data from a single keyboard to a plurality of microprocessors. This design, however, does not suggest that the keyboard, master CPU and keyboard emulation circuit be arranged as a remote device with a working memory, removed from a slave CPU and capable of inputting, editing or translating data independently of the slave CPU. Additionally, the disclosed device transfers keystrokes to the slave CPU on the basis of whether the keystroke is on a table in the master CPU, not on the basis of the mode of the master CPU. Further, no capability is described for replacing keystroke characters by other single characters or by strings of characters, known as macros, or for providing translation in order to permit data transfer to various different application programs while using the specific control codes of the target application program. Finally, the system fails to allow a bypass connection of the output of the keyboard to the keyboard interface of the slave processor.
Similarly, a multi option keyboard is available from Cherry Mikroschalter GMBH under the designation "MULTI 2000". This product is described in an operating manual therefor as having an 8-bit microcontroller and as storing data which is changeable by the user. Specifically, a number of function keys may be coded with byte strings selectable by the user. The keyboard includes a display for inputted characters. The keyboard may communicate with its host PC (personal computer) using an RS 485/422 interface or via an RS 232 serial asynchronous interface at various baud rates, using ASCII characters which may be transformed into known IBM codes. However, the keyboard, which may also include an integrated bar code reader, a magnetic card reader or a mouse, is incapable of entering and editing data, such as barcode data, independently of its host PC. Moreover, the keyboard includes neither a portable power supply nor software allowing the user to record, edit or translate character strings into formats compatible with various application programs operating on different computers. Thus, the keyboard (which derives its power from the host PC) cannot be used as a portable device for data entry remote from the host.
Other keyboard units are known in the art, as illustrated by U.S. Pat. Nos. 4,431,988; 4,387,296; 4,293,855; 4,179,748; 4,090,247; 4,016,542 and 3,942,157. Of these, the U.S. Pat. Nos. 4,016,542 and 3,942,157 disclosures provide a portable data gathering system including a keyboard, a display and a memory, together with an arrangement for conveying the data therefrom to a remote terminal or host processor. However, the device is apparently intended to be merely a temporary data storage tool for communication with a host. There is no suggestion of using the same as a standard keyboard input for its host, or of communicating with the host via the keyboard interface thereof.
In the U.S. Pat. No. 4,090,247 there is disclosed a similar portable data entry device, including a memory for storing a plurality of multiple character records and a display. The device, which is self powered, includes a connector for direct connection between the device and a data system.
Still another portable data entry device is described in the U.S. Pat. No. 4,387,296, for use in meter reading. Thus, an input/output magnetic tape is provided for mass data storage and an EAROM (electronic alterable read only memory) is included, for storing utility rate tables. Thus, the device may be used automatically to calculate a customer's utility charges and to print customer bills for direct delivery to the customer.
The U.S. Pat. No. 4,179,748 disclosure teaches a programmer unit, for connection to a machine keyboard, which is capable of storing (as a program) a sequence of key closures and of supplying to the machine and through the keyboard simulated key closures in the order in which the key closures were generated and stored. However, the device is simply intended to convert a non-programmable calculator into a programmable calculator, rather than to provide a portable data storage and editing device.
The U.S. Pat. No. 4,293,855 disclosure identifies a portable communication device for providing communication by people having restricted physical and/or motor handicaps. Thus, a keyboard and display are provided.
The U.S. Pat. No. 4,431,988 describes a further keyboard, including a random access memory. The keyboard is configurable for entry to several interfaces and several process controllers.
None of the above described art, however, provides a device which may be used for both remote data entry and as a keyboard input device for a host computer. None of the art teaches that such a device should be connected to its host through the keyboard interface of the host, thus to permit the portable data entry device to function as the standard keyboard for its host. Moreover, none of the art teaches that such a portable device may include editing capability and may provide output data simulating any of a plurality of application programs.
There is thus a need in the prior art for a device which may accept and edit input data, for use by a plurality of application programs, and which functions both as a remote entry device and as a standard keyboard for its host processor.